(function()
{
	var configParaFun = function()
	{
		this.value = false;
		this.lan = 'zh';
	}
	configParaFun.prototype.setValue = function()
	{
		this.value = {};
		// 权限定义，必须定义在这里，因为是开发阶段的事情
		// 用于权限的，一共35个字符
		// ABCDEFGHIJKLMNOPQRSTUVWXYZ123456789
		// 特别注意，数字权限只能通过授权使用，而不能直接使用
		this.value['auth'] = {
			'finance' : {
				'b' : '账号管理',
				'c' : '记账',
				'd' : '查看账单',
				'z' : 'UI界面(<font class="blue">!!</font>)',
			},
			'images' : {
				'b' : '删除一张图片',
				'l' : '图片浏览',
				'm' : '图片容器管理',
				'z' : 'UI界面(<font class="blue">!!</font>)',
			},
			'order' : {
				'a' : '订单列表导出，该权限涉及客户消费者信息，谨慎使用',
				'b' : '订单列表显示',
				'c' : '库存查询',
				'd' : '编辑订单备注，修改发货快递',
				'f' : '参与销售平台相关操作',
				'g' : '显示RPR库存',
				'i' : '创建入库单',
				'k' : '审核出库单',
				'm' : '项目管理',
				'n' : '项目列表',
				'o' : '创建出库单、修改发货地址，该权限一般只有客户直接拥有(<font class="red">!!</font>)',
				'r' : '未抛单前更改仓库接口',
				's' : '审核入库单',
				't' : '取消订单',
				'x' : '做RPR强制出入库单(<font class="red">!!</font>)',
				'y' : '强制取消订单(<font class="red">!!</font>)',
				'z' : 'UI界面(<font class="blue">!!</font>)',
			},
			'rpr' : {
				'b' : '项目超级管理权限，如删除项目，请使用后立即释放，避免误操作(<font class="red">!!</font>)',
				'c' : '创建资金订单',
				'd' : '财务审核资金订单',
				'e' : '终审资金订单',
				'h' : '创建入库单',
				'i' : '财务审核入库单',
				'j' : '终审入库单',
				'm' : '基础信息管理，包括创建项目及批次等，但与具体订单业务无关',
				'n' : '修改产品名称',
				'o' : '创建出库单',
				'p' : '财务审核出库单',
				'q' : '终审出库单',
				'w' : '商品变价操作',
				'y' : '取消已经终审的订单，该操作一般是order服务通过api调用执行，在本服务不直接操作(<font class="red">!!</font>)',
				'z' : 'UI界面(<font class="blue">!!</font>)',
			},
			'shop' : {
				'e' : '商品管理',
				'm' : '接口管理、店铺管理',
				'z' : 'UI界面(<font class="blue">!!</font>)',
			},
			'receive' : {
				'a' : '浏览表格',
				'b' : '创建预约表',
				'c' : '确认审核收货表（客户）',
				'd' : '清点数量',
				'e' : '修改收货信息，创建、删除收货详单',
				'f' : '创建收货表',
				'g' : '审核收货表（员工）',
				'h' : '修改产品SKU',
				'i' : '创建入库单',
				'j' : '允许查看预约数量',
				'k' : '签收到货产品',
				'l' : '浏览所有的到货表',
				'm' : '收货模块管理者',
				'n' : '点数前审核',
				'z' : 'UI界面(<font class="blue">!!</font>)',
			},
			'ware' : {
				'a' : '订单、SKU、KEY、货位等各种列表',
				'b' : '审核、删除、创建入库单',
				'c' : '收货、上架、货位管理',
				'd' : '收货组及商品信息组管理者',
				'e' : '导出数据',
				'f' : '可查看存储货位',
				'g' : '创建出库单',
				'h' : '审核出库单、更改发货地址',
				'i' : '取消出库单、更改物流',
				'j' : '拣货、打包、称重扫描',
				'k' : 'PC拣货',
				'l' : '',
				'm' : '出库组管理者',
				'n' : '打印KEY时强制重新生成KEY(<font class="red">!!</font>)',
				'o' : '强制出库(<font class="red">!!</font>)',
				'p' : '装箱拣货',
				'q' : '爆款拣货',
				'r' : '取消拣货（已打印）',
				's' : '差量出货(<font class="red">!!</font>)',
				't' : '当前界面重打印（订单标识为已打印，需要重新打印）',
				'u' : '',
				'v' : '',
				'w' : '',
				'x' : '',
				'y' : '',
				'z' : 'UI界面(<font class="blue">!!</font>)',
			},
			'account' : {
				'b' : '创建/编辑账单',
				'c' : '创建现金记账（充值/提现）',
				'd' : '查看账单',
				'e' : '客户身份参与财务（关于客户的其他财务操作，不包括查看账单等操作）',
				'f' : '财务申请',
				'g' : '支付、退款',
				'h' : '合同管理、编辑与查看',
				'i' : '自动账单运行',
				'j' : '管理自动账单模板',
				'k' : '查看成本相关的记录',
				'r' : '财务答疑、与客户沟通',
				'm' : '财务总管理',
				's' : '科目管理',
				'z' : 'UI界面(<font class="blue">!!</font>)',
			},
			'assets' : {
				'1' : '初始化已经开启的账套( 仅用于复授权 <font class="red">!!</font> )',
				'b' : '创建记账凭证',
				'c' : '审核记账凭证（会计入账）',
				'd' : '复审核记账凭证（只有复审了所有凭证才能关闭会计期间）',
				'e' : '生成损益转本年利润凭证',
				'f' : '关闭会计期间、刷新期初余额(<font class="red">!!</font>)',
				'g' : '初始化已经开启的账套( 需要复授权 <font class="red">!!</font> )',
				'h' : '删除、编辑非自己创建的凭证',
				'i' : '浏览非自己创建的凭证',
				'j' : '浏览指定商家财务账单（总账与明细账）',
				'k' : '浏览科目、账套等基础信息',
				'm' : '账套管理，创建修改科目',
				'n' : '查看财务报表（利润表、资产负债表、现金流表）',
				'o' : '浏览所有商家财务账单（总账与明细账）',
				'p' : '登记现金日记账',
				'q' : '浏览非自己创建的现金日记账',
				'r' : '审核、删除（非自己）现金日记账',
				'z' : 'UI界面(<font class="blue">!!</font>)',
			},
			'login' : {
				'a' : '后台自动任务代理，非自动任务的用户请不要勾选(<font class="red">!!</font>)',
				'b' : '后台任务管理',
				'c' : '后台任务查看',
				'd' : '无需需要设备授权（不具有该权限的用户必须在已授权的设备上登录）',
				'e' : '无需强制锁定设备（不具有该权限的用户必须强制锁定设备半小时以上，除非主动退出登录）',
				'f' : '特殊流程操作或授权、设备授权',
				'g' : '无需强制微信绑定并登录（不具有该权限的用户必须强制进行微信绑定，并使用微信登录）',
				'j' : '商家已被锁定，部分功能将不能完成，请与仓储公司或仓储公司财务联系解决',
				'm' : '管理公共资源、模板等',
				'n' : '接口设置与管理',
				'o' : '岗位浏览、群组管理',
				'p' : '可以在手机端以PC的方式显示',
				's' : '管理本商家部分设置、公共资源及模板等',
				't' : '超级阅读权限，一般用于查看所有商家的财务统计等',
				'u' : '技术超级用户，具有管理设置、用户权限及敏感操作等所有权限，但可能不包括所有业务(<font class="red">!!</font>)',
				'v' : '业务超级用户，具有管理业务及员工等所有权限(<font class="red">!!</font>)',
				'y' : '超级大BOSS权限，一般用于商家锁定等重大抉择(<font class="red">!!</font>)',
				'w' : '内部员工，非客户，内部员工一定要勾选，否则可能获取更多不应该获取的权限(<font class="red">!!</font>)',
				'x' : '查看所有工单、信道消息',
				'z' : 'UI界面(<font class="blue">!!</font>)',
			},
		};
		// 微服务模块定义
		this.value['servers'] = {
			"account" : {
				"icon" : "fa-film",
				'feetemplatetype' : [ {
					'type' : 'express',
				}, {
					'type' : 'bill',
				}, {
					'type' : 'receive',
				}, {
					'type' : 'returns',
				}, {
					'type' : 'worktask',
				} ],
			},
			"doc" : {
				"icon" : "fa-file-word-o",
				"langservername" : "login",
			},
			"finance" : {
				"icon" : "fa-cny",
			},
			"images" : {
				"icon" : "fa-photo",
			},
			"assets" : {
				"icon" : "fa-btc",
			},
			"log" : {
				"icon" : "fa-file-zip-o",
				"langservername" : "login",
			},
			"login" : {
				"icon" : "fa-cogs",
				"superbusinesstypelist" : "bywarehouse,bywareproject,byserversproject,byaccountproject"
			},
			"order" : {
				"icon" : "fa-newspaper-o",
			},
			"outerapi" : {
				"icon" : "fa-random",
				"namelist" : {
					"expressapi" : "kdniao,kd100,yuantong,shunfeng,yunda,shentong,debang",
					"messageapi" : "mobile,message,wxapi",
					"shopapi" : "e365,vip,taobao,youzan,hyfw,dinghuo,qimen,hfyongyou",
				},
			},
			"receive" : {
				"icon" : "fa-scribd",
			},
			"rpr" : {
				"icon" : "fa-institution",
			},
			"shop" : {
				"icon" : "fa-delicious",
			},
			"task" : {
				"icon" : "fa-handshake-o",
				"langservername" : "login",
			},
			"ware" : {
				"icon" : "fa-cubes",
			},
			"work" : {
				"icon" : "fa-quora",
				"langservername" : "login",
			},
		};
		// 皮肤定义 'board' 暂停使用
		this.value['skinlist'] = {
			'default,blue' : {
				'caption' : '默认式样（蓝色）'
			},
			'default,green' : {
				'caption' : '默认式样（绿色）'
			},
			'default,red' : {
				'caption' : '默认式样（红色）'
			},
			'simple,blue' : {
				'caption' : '简化式样（蓝色）'
			},
			'simple,green' : {
				'caption' : '简化式样（绿色）'
			},
			'simple,red' : {
				'caption' : '简化式样（红色）'
			},
		};
		// end
	}
	configParaFun.prototype.init = function()
	{
		var mk = (config.debug ? 'debug' : 'release') + (this.isManager() ? 'U' : '');
		if (mk != this.mk)
			this.value = false;
		this.mk = mk;
		if (!this.value)
			this.setValue();
	};
	configParaFun.prototype.isManager = function()
	{
		if (window.login && login.haveAuth('login', 'U'))
			return true;
		else
			return false;
	}
	configParaFun.prototype.val = function(k1, k2, k3, k4)
	{
		var name = '';
		this.init();
		if (k1)
		{
			k1 = k1.toLowerCase();
			if (!k2)
				return this.value[k1];
			else if (!k3)
			{
				k2 = k2.toLowerCase();
				if (this.value[k1] && typeof this.value[k1] == 'object')
					return this.value[k1][k2];
			}
			else if (!k4)
			{
				k2 = k2.toLowerCase();
				k3 = k3.toLowerCase();
				if (this.value[k1] && typeof this.value[k1] == 'object' && typeof this.value[k1][k2] == 'object')
					return this.value[k1][k2][k3];
			}
			else
			{
				k2 = k2.toLowerCase();
				k3 = k3.toLowerCase();
				k4 = k4.toLowerCase();
				if (this.value[k1] && typeof this.value[k1] == 'object' && typeof this.value[k1][k2] == 'object' && typeof this.value[k1][k2][k3] == 'object')
					return this.value[k1][k2][k3][k4];
			}
		}
		return undefined;
	}
	configParaFun.prototype.setLan = function(lan)
	{
		this.lan = lan;
	}
	window.configPara = new configParaFun();
}());